package com.example.poitest.test1;


import org.springframework.util.ResourceUtils;

import java.io.FileNotFoundException;
import java.io.IOException;
import java.util.LinkedHashMap;
import java.util.LinkedList;

public class Test4 {
    public static void main(String[] args) throws FileNotFoundException {
        // 加载模板表格
//        ExcelTemplate excel = new ExcelTemplate("F:\\乔丹丹4.xlsx");
        String srcFilePath = ResourceUtils.getFile("classpath:export_templates/乔丹丹4.xlsx").getPath();
        ExcelTemplate excel = new ExcelTemplate(srcFilePath);

        // 验证是否通过
        if(!excel.examine())
            return;
        try {
            // 创建一个columns用来存储填充的值
            LinkedHashMap<Integer,LinkedList<String>> columns = new LinkedHashMap<>();
            // 创建第一列填充的值
            // ExcelTemplate会按从上往下，
            // 从左往右的顺序填充值为${}的单元格
            LinkedList<String> column1 = new LinkedList<>();
            column1.add("乔丹");
            column1.add("科比");
            columns.put(1,column1);
            // 创建第二列填充的值
            LinkedList<String> column2 = new LinkedList<>();
            column2.add("麦迪");
            column2.add("艾弗森");
            columns.put(2,column2);
            // 第一个参数，需要操作的sheet的索引
            // 第二个参数，需要复制的区域的第一列索引
            // 第三个参数，需要复制的区域的最后一列索引
            // 第四个参数，需要插入的位置的索引
            // 第五个参数，填充行区域中${}的值
            // 第六个参数，是否需要删除原来的区域
            excel.addColumnByExist(0,2,3,7,columns,false);
            excel.save("E:\\000temp\\乔丹丹4导出.xlsx");
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}
